Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Стек і черга. Хеш таблиця

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Інформаційні системи та мережі

Інформація про роботу

Рік:
2008
Тип роботи:
Лабораторна робота
Предмет:
Алгоритми і структури даних
Група:
КН

Частина тексту файла

Міністерство освіти і науки України Національний університет "Львівська політехніка" Кафедра "Інформаційні системи та мережі"    Лабораторна робота № 4 з предмету: Алгоритми і Структури Даних на тему: Стек і черга. Хеш таблиця          ЛЬВІВ-2008  Текст програми на мові С++: #include <stdio.h> #include <stdlib.h> #include <conio.h> #define MAXITEM 100 class quequ1 { protected: int val[MAXITEM]; int top; public: quequ1(){ top=0; } void push(int nval) { if(top==MAXITEM) { printf("Quequ overflow error\n"); exit(-1); } val[top++]=nval; } int pop() { if(top==0) { printf("Quequ no item error\n"); exit(-1); } int nval=val[0]; for(int i=1; i<top; i++) val[i-1]=val[i]; top--; return nval; } void show() { printf("["); if(top>=1) printf("%d", val[0]); for(int i=1; i<top; i++) printf(",%d", val[i]); printf("]"); } void test() { int tmp, i; printf("Form:\n"); for(i=0; i<5; i++) push(random(20)); show(); for(i=0; i<8; i++) { if(random(2)) { push(tmp=random(20)); printf("\npush(%d)\n", tmp); } else { tmp=pop(); printf("\npop=%d\n", tmp); } show(); } } }; class quequ2 { protected: int val[MAXITEM]; int bottom, top; public: quequ2(void){ bottom=0; top=0; } void push(int nval) { if(top==MAXITEM) { if(bottom==0) { printf("Quequ overflow error\n"); exit(-1); } for(int i=bottom; i<top; i++) val[i-bottom]=val[i]; top-=bottom; bottom=0; } val[top++]=nval; } int pop() { if(top==bottom) { printf("Quequ no item error\n"); exit(-1); } bottom++; return val[bottom-1]; } void show() { printf("["); if(top>=bottom+1) printf("%d", val[bottom]); for(int i=bottom+1; i<top; i++) printf(",%d", val[i]); printf("]"); } void test() { int tmp, i; printf("Form:\n"); for(i=0; i<5; i++) push(random(20)); show(); for(i=0; i<8; i++) { if(random(2)) { push(tmp=random(20)); printf("\npush(%d)\n", tmp); } else { tmp=pop(); printf("\npop=%d\n", tmp); } show(); } } }; int main() { quequ1 q1; quequ2 q2; randomize(); clrscr(); puts("\nTEST QUEQU TYPE 1\n"); q1.test(); getch(); clrscr(); puts("\nTEST QUEQU TYPE 2\n"); q2.test(); getch(); return 0; } Результати компютерної реалізації програми: Результати компютерної реалізації програми виправдали очікування і підтвардили правильність її складання. Нижче наведено скріншот, який демонструє це:   Висновки Під час виконання роботи я придбав і закріпив навички моделювання зв’язаних динамісних структур даних та роботи з ними.
Антиботан аватар за замовчуванням

30.11.2012 00:11

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини